var siteim_command_len = 5;
var SiteImCommand = {
  /**
     * 心跳请求
     */
  HEARTBEAT_REQ: 1,

  /**
     * 握手请求
     */
  HANDSHAKE_REQ: 2,
  /**
     * 握手响应
     */
  HANDSHAKE_RESP: 3,

  /**
     * 进入群组请求
     */
  JOIN_GROUP_REQ: 4,
  /**
     * 进入群组响应
     */
  JOIN_GROUP_RESP: 5,

  /**
     * 进入群组通知
     */
  JOIN_GROUP_NTY: 6,

  /**
     * 离开群组通知
     */
  LEAVE_GROUP_NTY: 7,

  /**
     * 点对点聊天（私聊）请求
     */
  P2P_CHAT_REQ: 8,

  /**
     * 点对点聊天（私聊）通知
     */
  P2P_CHAT_NTY: 9,

  /**
     * 群聊请求
     */
  GROUP_CHAT_REQ: 10,

  /**
     * 群聊通知
     */
  GROUP_CHAT_NTY: 11,

  /**
	 * 获取p2p聊天记录数据-请求
	 */
  QUERY_P2P_CHAT_LOG_REQ: 12,



  /**
	 * 让客户端关闭当前页面（只作用于WEB端）
	 */
  CLOSE_PAGE: 15,

  /**
     * 消息提示
     */
  MSG_TIP: 16,



  /**
	 * 分页获取在线观众请求
	 */
  PAGE_ONLINE_REQ: 18,

  /**
	 * 分页获取在线观众响应
	 */
  PAGE_ONLINE_RESP: 19,

  /**
	 * 更新token
	 */
  UPDATE_TOKEN_REQ: 20,

  /**
	 * 更新token响应
	 */
  UPDATE_TOKEN_RESP: 21,

  /**
	 * 撤回消息
	 */
  UNSEND_MSG_REQ: 22,

  /**
	 * 撤回消息通知
	 */
  UNSEND_MSG_NTY: 23,

  /**
	 * 用户动作日志
	 */
  USER_ACTION_LOG_REQ: 24,

    KF_P2P_REQ: 29,

    KF_P2P_NTY:30,

    /**
     * 服务器修改消息已读状态，告诉客服端
     */
    KF_P2P_READ_REQ:31,

    /**
     * 接收消息后告诉服务器消息已读
     */
    KF_P2P_READ_NTY:32,

    /**
     * 进群（扫描个人消息）
     */
    KF_JOIN_P2P_REQ:33,

    /**
     * 返回未读消息
     */
    KF_JOIN_P2P_NTY:34,

    KF_CHAT_P2P_REQ:35,

    KF_CHAT_P2P_NTY:36,

    /**
	 *  DEMO 请求消息
	 */
	DEMO_REQ: 10000,
	
	/**
	 *  DEMO 通知消息
	 */
	DEMO_NTY: 10001,

    /**
     * DEMO 测试
     */
    DEMOT_REQ: 10002,
    DEMOT_NTY: 10003,
    LXF_REQ:   10004,
    LXF_NTY:   10005
};


var tioFormatCommand = function(command) { 
  var commandstr = command + "";
  if (commandstr.length < siteim_command_len) {
    var gap = siteim_command_len - commandstr.length;
    var supplystr = "";
    for (var index = 0; index < gap; index++) {
      supplystr += "0";
    }

    if (command < 0) {
      commandstr = "-" + supplystr + commandstr.substring(1);
    } else {
      commandstr = supplystr + commandstr;
    }
  }
  // log("init command: " + command + ", fomatted command: " + commandstr);
  return commandstr;
};


var SiteImCommandReverse = {};

for (var commandName in SiteImCommand) {
  var commandValue = SiteImCommand[commandName];
  SiteImCommandReverse[tioFormatCommand(commandValue)] = commandName;
}

//log(SiteImCommandReverse);
